#编码
def encoding(a):
    return a.encode("utf-8")
print(encoding("测试"))

#解码
def encoding(a):
    return a.decode("utf-8")
print(encoding(b'\xe6\xb5\x8b\xe8\xaf\x95'))

#字符串的CRUD

#create(创建)
a = "hello,world"   #创建字符串
a += "!"            #追加字符串

#retrieve(检索)
a[1]                #根据索引获取字符
a.find("e")         #获取目标字符索引值(没有时返回值为-1)
a.index("!")        #获取目标字符索引值(没有时会报错)
a.startswith("hel") #与首字符开始的值做对比，相同返回true，不同返回false
a.endswith("ld!")   #与尾字符结束的值做对比，相同返回true，不同返回false

#update(更新)
a.replace("h","q")  #前面为要替换的值，后面为替换后的值
a.split(",")        #用","做分割，将其中的值转换为数组
b = ["a", "b", "c"]
",".join(b)         #将数组中的值通过","拼接成字符串

#delete(删除)
a.strip("ll")       #移除头尾指定的字符串
a.lstrip("h")       #移除左边指定的字符串
a.rstrip("!")       #移除右边指定的字符串

#字符串格式化输出
a = "white"
b = "black"

#按传入参数默认顺序输出
print("color: {},{}".format(a, b))
#按指定参数索引输出
print("color: {0},{1}".format(a, b))
#按关键词参数输出
print("color: {a},{b}".format(a="white", b="black"))
#按变量输出(只有3.6以上版本才可以使用)
print(f"color: {a},{b}")
#小数表示(小数点后面的数字表示保留到第几位)
print("{:.3f}".format(3.1415926))
#早期的方法
print("color : %s %s" % ("white", "black"))


#指定文件名, 方法(读, 写, 追加), 编码格式
output = open("output.txt", "w", encoding="utf-8")
content = "hello, world"
#将字符串写入文件
output.write(content)
#关闭文件进程
output.close()

#读取文件
input = open("output.txt", "r", encoding="utf-8")
# 获取文件中的内容
content = input.read()
print(content)

#追加文件内容
output = open("output.txt", "a", encoding="utf-8")
content = "\nhello, worlds"
#将字符串写入文件
output.write(content)
#关闭文件进程
output.close()

